<?php 


/***************************************************************/
//Nombre: codeDate
//Parametros: 
//Comentarios: 
//
//
function codeDate ($date) {

	if($date=="0000-00-00 00:00:00") return "";
	
	$v_tmp=explode(" ",$date);
	$tab = explode ("-", $v_tmp[0]);
	//if($v_tmp[1]=="00:00:00") $v_tmp[1]="";
	$r = $tab[2]."/".$tab[1]."/".$tab[0]." ".$v_tmp[1];
	//echo "$r<br>";
	return $r;
}

/***************************************************************/
//Nombre: decodeDate
//Parametros: 
//Comentarios: 
//
//
function decodeDate ($date) {
	$tab = explode ("/", $date);   
	$n = count($tab);
	if($n==3) {
		$r = $tab[2]."-".$tab[1]."-".$tab[0];
	} else {
		$r = "";
	}
	return $r;
}

/***************************************************************/
//Nombre: convertTimeExtToMySQL
//Parametros: 
//Comentarios: 
//
//
function convertTimeExtToMySQL($time){
	
	$v_time=explode(" ",$time);
	$v_tmp=explode(":",$v_time[0]);
	$horas=$v_tmp[0];
	$mins=$v_tmp[1];
	
	if($v_time[1]=="PM" && $v_tmp[0]!="12"){
		$horas+=12;		
	}
	
	if($v_time[1]=="AM" && $v_tmp[0]=="12"){
		$horas="00";		
	}
	
	
	return $horas.":".$mins.":00";
	
}

/***************************************************************/
//Nombre: convertDatesArray
//Parametros: 
//Comentarios: 
//
//
function convertDatesArray($v_fechas,$formatOut,$formatIn){

for($i=0;$i<count($v_fechas);$i++){
	$v_fechas[$i]=convertDate($v_fechas[$i],$formatOut,$formatIn);
}

return $v_fechas;

}

/***************************************************************/
//Nombre: getAnioFromFecha
//Parametros: 
//Comentarios: 
//
//
function getAnioFromFecha($fecha){

$v_fechaTmp=explode(" ",$fecha);
$strSoloFecha=$v_fechaTmp[0];
$v_soloFechaTmp=explode("-",$strSoloFecha);
$strSoloAnio=$v_soloFechaTmp[0];
return $strSoloAnio;


}


/***************************************************************/
//Nombre: getSemanaFechas
//Parametros: $idUser, $month, $year
//Comentarios: 
//
//
function getSemanaFechasMySQL($fechaActual){

$v_fecha=getdate(strtotime($fechaActual));
$NumeroDiaActual=$v_fecha["wday"];

//calculo la cantidad de dias hasta el lunes pasado
$dif=getLastMonDif($NumeroDiaActual);
$fechaLunesPasado=suma_fechas($fechaActual,$dif);
//echo "Desde: ".$fechaLunesPasado."<br>";

//pido la fecha del proximo domingo
$fechaProxDomingo=getNextDayDate($fechaActual,1,"1");
//echo "Hasta: ".$fechaProxDomingo."<br>";

$v_fechas=getRangoFechasMySQL($fechaLunesPasado." 00:00:00", $fechaProxDomingo." 00:00:00");

return $v_fechas;


}


/***************************************************************/
//Nombre: getRangoFechasMySQL
//Parametros: $idUser, $month, $year
//Comentarios: 
//
//
function getRangoFechasMySQL($start,$end){

while($start!=$end){
	$v_fechas[]=$start;
	$start=suma_fechas_formato_MySQL($start,1);
}

$v_fechas[]=$start;

return $v_fechas;

}

/***************************************************************/
//Nombre: getRangoFechas
//Parametros: $idUser, $month, $year
//Comentarios: 
//
//
function getRangoFechas($start,$end){

while($start!=$end){
	$v_fechas[]=$start;
	$start=suma_fechas($start,1);
}

$v_fechas[]=$start;

return $v_fechas;

}

/***************************************************************/
//Nombre: getPubDates
//Parametros: fechaStart, cant
//Comentarios: devuelve las siguientes fechas de publicaci�n. 
//Me da la fechas para todas las publicaciones hasta un numero dado (cant).
//
function getPubDates($cant,$fechaStart){


//obtengo el o los dias de publicaciones
$SQL="select numerodia from publicaciones WHERE eliminado='0' ORDER BY numerodia";
//printf("<br>".$SQL."<br>");
$result=mysql_query($SQL,$link);

//cargo vector con los dias de publicacion
while($row = mysql_fetch_array($result))
{
	$v_diasPub[]=$row["numerodia"];	
}

$v_fechasPubs=getFechasByDays($v_diasPub,$cant,$fechaStart);//obtengo las fechas para los dias de publicaci�n

return $v_fechasPubs;

}

/***************************************************************/
//Nombre: getFechasByDays
//Parametros: v_dias
//Comentarios: Le paso un vector con los dias (1,2,3,4,5...etc) y me devuelve las fechas. A partir de una fecha dada
//
//
function getFechasByDays($v_dias,$cant,$fechaStart){

if($fechaStart==""){
	$fechaActual=date("Y-m-d");
}
else{
	$fechaActual=$fechaStart;
}


$v_fecha=getdate($fechaActual);
$i=0;
$j=0;

$fechaDeHoy=date("Y-m-d");
$abort=false;

while($j<$cant)//recorro el vector con los dias de y devuelvo las fechas de esos d�as. Tantas como me hayan pedido.
{
	if($i>=count($v_dias)){//si termine de recorrerlo empiezo de nuevo
		$i=0;
	}
	
	//corrijo el problema que daba si el primer dia de publicacion ya pas�
	//REVISAR BIEN ESTO POR QUE ESTA MUY MUY MUY ENTREVERADO
	$v_fecha=getdate(strtotime($fechaActual));
	$NumeroDiaActual=$v_fecha["wday"];
	
	//Mientras vengo con mas de un dia (count($v_dias)>1)) y no me pase de la cantidad de dias q traigo ($i<count($v_dias)) y la fecha de inicio venga vacia (esto es por si la llamo desde los listados) 
	while(($NumeroDiaActual>($v_dias[$i]-1)) && $fechaStart=="" && $i<count($v_dias) && count($v_dias)>1){
		//echo "Comparando:".$NumeroDiaActual." con: ".($v_dias[$i])."<br>";	
		$i++;
	}
	
	//echo "para la fecha: ".$v_datos[$j-1]." pido el siguiente: ".$v_dias[$i]."<br>";
	if($j==0){
		$primero=1;
		$v_datos[$j]=getNextDayDate($fechaActual,$v_dias[$i], $primero);	//le paso como parametro la primera
	}
	else{
		$primero=0;
		$v_datos[$j]=getNextDayDate($v_datos[$j-1],$v_dias[$i], $primero);	//le paso como parametro la anterior
	}
	
	$j++;
	$i++;
}

return $v_datos;

}


/***************************************************************/
//Nombre: getNextDayDate
//Parametros: v_dias
//Comentarios: Le paso un dia, y me devuelve la fecha. A partir de la indicada
//
function getNextDayDate($fechaStart,$dia,$primero){

$cont=0;

$dia=$dia-1;//ajusto para comienzo por 0

$fechaActual=date("Y-m-d");
if($fechaStart==""){//si no paso nada asumo q es hoy
	$v_fecha=getdate(strtotime($fechaActual));
	$fechaStart=$fechaActual;
}
else{
	$v_fecha=getdate(strtotime($fechaStart));
}

$NumeroDiaActual=$v_fecha["wday"];//empieza por 0

//echo "<br><br>dia: ".$dia."<br>";
//echo "Para la fecha: ".$fechaStart." el Numero del Dia es: ".$NumeroDiaActual."<br>";
//echo "fechaStart: ".$fechaStart."<br>";
//echo "primero: ".$primero."<br>";

$notYet=true;
$a=0;

while($notYet){
	//if($NumeroDiaActual!=$dia ){//si el dia pasado no es el dia de hoy
	if($NumeroDiaActual!=$dia || $cont<=0 && $primero==0){//si el dia pasado no es el dia de hoy
		if($NumeroDiaActual<6){
			$NumeroDiaActual++;
		}
		else{
			$NumeroDiaActual=0;
		}
		//echo "numero a comparar: ".$NumeroDiaActual."<br>";
		$primero=0;
		$cont++;
	}
	else{//si es igual termino
		$notYet=false;
	}
	$a++;
}
//echo "Diferencia: ".$cont."<br>";

//ahora se cuantos dias le tengo que sumar a la fecha para llegar al dia pasado por parametro.
$fechaNueva=suma_fechas($fechaStart,$cont);

//echo "fechaNueva: ".$fechaNueva."<br>";
return $fechaNueva;

}

/***************************************************************/
//Nombre: convertDate
//Parametros: $fechaOriginal,$formatOUT, $formatIN
//Comentarios: convierte una fecha de un formato a otro
//
//
function convertDate($fechaOriginal,$formatOUT, $formatIN){

//echo "<br>fechaOriginal: ".$fechaOriginal."<br>";


if($formatOUT=="yyyy-mm-dd hh:mm:ssa" && $formatIN=="yyyy-mm-dd hh:mm:ss"){
	if($fechaOriginal==""){
		return "0000-00-00 00:00:00AM";
	}
	$v_temp1=explode(" ",$fechaOriginal);
	$v_temp=explode(":",$v_temp1[1]);//aca queda la hora
	
	$hora=$v_temp[0];
	$min=$v_temp[1];
	$seg=$v_temp[2];
	
	if($hora>="13"){//si es PM
		$hora=$hora-12;
		$ampm="PM";
	}
	else{//si es AM
		$ampm="AM";
	}
	
	if($hora=="00") $hora="12";
	
	//if($hora<10 && $hora!="00" & $hora!="0") $hora="0".$hora;
	if(strlen($hora)==1) $hora="0".$hora;
	
	$horaFull=$hora.":".$min.":".$seg.$ampm;	
	$date=$v_temp1[0]." ".$horaFull;
	
	return $date;
	
}	
if($formatOUT=="googleCal" && $formatIN=="yyyy-mm-dd hh:mm:ss"){//Ej: 2012-01-03T19:30:00.000-02:00
	if($fechaOriginal==""){
		return "0000-00-00T00:00:00.000-00:00";
	}
	
	$v=explode(" ",$fechaOriginal);
	
	$fecha=$v[0];
	$hora=$v[1];
		
	$timeOffSet=getUserConfigValueByDesc($_SESSION["idUsuario"], 'timezone');
	if($timeOffSet=="") $timeOffSet="-00:00";	
	
	$date=$fecha."T".$hora.".000".$timeOffSet;	
	
	return $date;
	
}
if($formatOUT=="yyyy-mm-dd hh:mm:ss" && $formatIN=="googleCal"){//Ej: 2012-01-03T19:30:00.000-02:00
	if($fechaOriginal==""){
		return "0000-00-00 00:00:00";
	}
	
	$v=explode(".",$fechaOriginal);
	
	$v_temp=explode("T",$v[0]);
	
	
	$date=$v_temp[0]." ".$v_temp[1];
	
	return $date;
	
}
if($formatOUT=="yyyy-mm-dd hh:mm:ss" && $formatIN=="yyyy-mm-ddThh:mm:ss"){
	if($fechaOriginal==""){
		return "0000-00-00 00:00:00";
	}
	$v_temp=explode("T",$fechaOriginal);
	
	
	$date=$v_temp[0]." ".$v_temp[1];
	
	return $date;
	
}
if($formatOUT=="dd/mm/yyyy hh:mm:ss" && $formatIN=="yyyy-mm-dd hh:mm:ss"){
	if($fechaOriginal==""){
		return "00/00/0000 00:00:00";
	}
	$v_temp1=explode(" ",$fechaOriginal);
	$v_temp=explode("-",$v_temp1[0]);
	$anio=$v_temp[0];
	$mes=$v_temp[1];
	$dia=$v_temp[2];
	
	$date=$dia."/".$mes."/".$anio." ".$v_temp1[1];
	
	return $date;
	
}
elseif($formatOUT=="hh" && $formatIN=="yyyy-mm-dd hh:mm:ss"){
	if($fechaOriginal==""){
		return "00";
	}
	$v_temp1=explode(" ",$fechaOriginal);
	$v_temp=explode(":",$v_temp1[1]);
	$hora=$v_temp[0];

	
	$date=$hora;
	
	return $date;
	

}
elseif($formatOUT=="mm" && $formatIN=="yyyy-mm-dd hh:mm:ss"){
	if($fechaOriginal==""){
		return "00";
	}
	$v_temp1=explode(" ",$fechaOriginal);
	$v_temp=explode(":",$v_temp1[1]);
	$min=$v_temp[1];

	$date=$min;
	
	return $date;
	

}
elseif($formatOUT=="yyyy-mm-dd hh:mm:ss" && $formatIN=="dd/mm/yyyy"){
	if($fechaOriginal==""){
		return "0000-00-00 00:00:00";
	}
	$v_temp=explode("/",$fechaOriginal);
	$anio=$v_temp[2];
	$mes=$v_temp[1];
	$dia=$v_temp[0];
	
	$date=$anio."-".$mes."-".$dia." 00:00:00";
	
	return $date;
	

}
elseif($formatOUT=="yyyy-mm-dd" && $formatIN=="dd/mm/yyyy"){
	if($fechaOriginal==""){
		return "0000-00-00";
	}
	$v_temp=explode("/",$fechaOriginal);
	$anio=$v_temp[2];
	$mes=$v_temp[1];
	$dia=$v_temp[0];
	
	$date=$anio."-".$mes."-".$dia;

	return $date;
}
elseif($formatOUT=="dd/mm/yyyy" && $formatIN=="yyyy-mm-dd hh:mm:ss"){
	if($fechaOriginal==""){
		return "00/00/0000";
	}
	$v_temp1=explode(" ",$fechaOriginal);
	$v_temp=explode("-",$v_temp1[0]);
	$anio=$v_temp[0];
	$mes=$v_temp[1];
	$dia=$v_temp[2];
	
	$date=$dia."/".$mes."/".$anio;
	
	return $date;
	
}
elseif($formatOUT=="dd/mm/yyyy" && $formatIN=="yyyy-mm-dd"){
	if($fechaOriginal==""){
		return "00/00/0000";
	}
	$v_temp=explode("-",$fechaOriginal);
	$anio=$v_temp[0];
	$mes=$v_temp[1];
	$dia=$v_temp[2];
		
	$date=$dia."/".$mes."/".$anio;
	
	return $date;
	
}
elseif($formatOUT=="dd/m/yyyy" && $formatIN=="yyyy-mm-dd"){
	if($fechaOriginal==""){
		return "00/00/0000";
	}	
	$v_temp=explode("-",$fechaOriginal);
	$anio=$v_temp[0];
	
	if($v_temp[1]<10){//si es de una cifra no le pongo el cero adelante
		$mes=substr($v_temp[1],1,1);
	}
	else{
		$mes=$v_temp[1];
	}
	$dia=$v_temp[2];
		
	$date=$dia."/".$mes."/".$anio;
	
	return $date;
	
}
elseif($formatOUT=="d/m/yyyy" && $formatIN=="yyyy-mm-dd hh:mm:ss"){
	if($fechaOriginal==""){
		return "00/00/0000";
	}
	$v_fechaOriginal=explode(" ",$fechaOriginal);
	$v_temp=explode("-",$v_fechaOriginal[0]);
	$anio=$v_temp[0];
	
	if($v_temp[1]<10){//si es una cifra no le pongo el cero adelante
		$mes=substr($v_temp[1],1,1);
	}
	else{
		$mes=$v_temp[1];
	}
	
	if($v_temp[2]<10){//si es una cifra no le pongo el cero adelante
		$dia=substr($v_temp[2],1,1);
	}
	else{
		$dia=$v_temp[2];
	}
			
	$date=$dia."/".$mes."/".$anio;
	
	return $date;
	
}
elseif($formatOUT=="d/m/yyyy" && $formatIN=="yyyy-mm-dd"){
	if($fechaOriginal==""){
		return "00/00/0000";
	}	
	$v_temp=explode("-",$fechaOriginal);
	$anio=$v_temp[0];
	
	if($v_temp[1]<10){//si es una cifra no le pongo el cero adelante
		$mes=substr($v_temp[1],1,1);
	}
	else{
		$mes=$v_temp[1];
	}
	
	if($v_temp[2]<10){//si es una cifra no le pongo el cero adelante
		$dia=substr($v_temp[2],1,1);
	}
	else{
		$dia=$v_temp[2];
	}
			
	$date=$dia."/".$mes."/".$anio;
	
	return $date;
	
}
elseif($formatOUT=="dd-mm-yyyy" && $formatIN=="yyyy-mm-dd hh:mm:ss"){
	if($fechaOriginal==""){
		return "00-00-0000";
	}	
	$v_temp=explode(" ",$fechaOriginal);
	$v_temp=explode("-",$v_temp[0]);
	$anio=$v_temp[0];
	$mes=$v_temp[1];
	$dia=$v_temp[2];
		
	$date=$dia."-".$mes."-".$anio;
	
	return $date;
	
}
elseif($formatOUT=="hh:mm" && $formatIN=="yyyy-mm-dd hh:mm:ss"){
	if($fechaOriginal==""){
		return "00:00:00";
	}	
	$v_temp=explode(" ",$fechaOriginal);
	$v_temp=explode(":",$v_temp[1]);
	$hora=$v_temp[0];
	$min=$v_temp[1];
		
	$date=$hora.":".$min;
	
	return $date;
	
}
elseif($formatOUT=="hh:mm:ss" && $formatIN=="yyyy-mm-dd hh:mm:ss"){
	if($fechaOriginal==""){
		return "00:00:00";
	}	
	$v_temp=explode(" ",$fechaOriginal);
	$v_temp=explode(":",$v_temp[1]);
	$hora=$v_temp[0];
	$min=$v_temp[1];
	$seg=$v_temp[2];
		
	$date=$hora.":".$min.":".$seg;
	
	return $date;
	
}
elseif($formatOUT=="yyyy-mm-dd hh:mm:ss" && $formatIN=="email"){
	if($fechaOriginal==""){
		return "0000-00-00 00:00:00";
	}
	$v_temp=explode(" ",$fechaOriginal);
	
	
	$dia=$v_temp[1];
	$mes=getMonthNum($v_temp[2]);
		
	$anio=$v_temp[3];
	$horaComp=$v_temp[4];
 	
	$date=$anio."-".$mes."-".$dia." ".$horaComp;
	//echo $date." <--";
	return $date;

}



}

/***************************************************************/
//Nombre: getMonthNum
//Parametros: 
//Comentarios: 
//
//
function getMonthNum($mes){

$array = array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Set','Oct','Nov','Dec');

for($i=0;$i<count($array);$i++){
	if($mes==$array[$i]){
		return $i+1;
	}

}
return 1;
}


/***************************************************************/
//Nombre: compararFechas
//Parametros: 
//Comentarios: 
//
//
function compararFechas($fechaHora_1,$fechaHora_2){

$aux=explode(" ",$fechaHora_1);
$fecha_1=$aux[0];
$hora_1=$aux[1];

$aux=explode(" ",$fechaHora_2);
$fecha_2=$aux[0];
$hora_2=$aux[1];

/*
echo " fecha 1:".$fecha_1."<br>";
echo " fecha 2:".$fecha_2."<br>";
echo " hora 1:".$hora_1."<br>";
echo " hora 2:".$hora_2."<br>";
*/

//cargo en variables las fechas y horas
list($anio1,$mes1,$dia1)=explode("-",$fecha_1);
list($anio2,$mes2,$dia2)=explode("-",$fecha_2);
list($horas1,$min1,$seg1)=explode(":",$hora_1);
list($horas2,$min2,$seg2)=explode(":",$hora_2);

$dif = mktime($horas1,$min1,$seg1,$mes1,$dia1,$anio1) - mktime($horas2,$min2,$seg2, $mes2,$dia2,$anio2);

if($dif>0){//fecha 1 mayor q fecha 2
	return 1;
}
if($dif<0){//fecha 2 mayor q fecha 1
	return -1;
}
if($dif==0){//fechas iguales -->> verifico la hora	
	return 0;	
}

}




/***************************************************************/
//Nombre: suma_fechas
//Parametros: $fecha,$ndias
//Comentarios: suma dias a una fecha (formato dd/mm/aaaa � dd-mm-aaaa)
//
function suma_fechas($fecha,$ndias){
	//echo $fecha."<br>";
	$v_fecha=explode(" ",$fecha);
	//echo "fecha: ".$v_fecha[0]."<br>";
	//echo "hora: ".$v_fecha[1]."<br><br>";
	list($anio,$mes,$dia)=explode("-",$v_fecha[0]);

    $nueva = mktime(0,0,0, $mes,$dia,$anio) + ($ndias * 24 * 60 * 60);
    $nuevafecha=date("Y-m-d",$nueva);

	return ($nuevafecha);  
 
}

/***************************************************************/
//Nombre: suma_fechas_formato_MYSQL
//Parametros: $fecha,$ndias
//Comentarios: suma dias a una fecha (formato dd/mm/aaaa � dd-mm-aaaa)
//
function suma_fechas_formato_MYSQL($fecha,$ndias){
	
	$v_fechas=explode(" ",$fecha);
	list($anio,$mes,$dia)=explode("-",$v_fechas[0]);
	
    $nueva = mktime(0,0,0, $mes,$dia,$anio) + ($ndias * 24 * 60 * 60);
    $nuevafecha=date("Y-m-d",$nueva);
	$nuevafecha=$nuevafecha." 00:00:00";

	return ($nuevafecha);  
 
}

/***************************************************************/
//Nombre: suma_fechas_formato_MYSQL_Alertas
//Parametros: $fecha,$ndias
//Comentarios: suma dias a una fecha (formato dd/mm/aaaa � dd-mm-aaaa)
//
function suma_fechas_formato_MYSQL_Alertas($fecha,$ndias){
	
	$v_fechas=explode(" ",$fecha);
	list($anio,$mes,$dia)=explode("-",$v_fechas[0]);
	list($hora,$min,$seg)=explode(":",$v_fechas[1]);
	
    $nueva = mktime($hora, $min, $seg, $mes, $dia, $anio) + ($ndias * 24 * 60 * 60);
    $nuevafecha=date("Y-m-d H:i:s",$nueva);
	$nuevafecha=$nuevafecha;

	return ($nuevafecha);  
 
}

/***************************************************************/
//Nombre: convertSecondsToDaysMinSec
//Parametros:
//Comentarios: 
//
function convertSecondsToDaysMinSec($s)
{
	
	$sXMin=60;//sesenta
	$sXhora=3600;////tres mil seiscientos
	$sXdia=86400;////ochenta y seis mil cuatricientos
	
	if($s<=$sXMin){//si es igual o menos de 1 min
		return $s." ".getLabelByTag("telemktgSeconds");
	}
	if($s>$sXMin && $s<=$sXhora){//Si es mas de 1 minuto pero menos o igual que 1 hora
		$min=$s/$sXMin;
		return convertToNumber2Decimals($min)." ".getLabelByTag("telemktgMinutes");
	
	}
	if($s>$sXhora && $s<=$sXdia){//si mas de 1 hora pero igual o menos de 1 dia
		$resto=$s%$sXhora;
		$horas=($s-$resto)/$sXhora;
		$resto2=$resto%$sXMin;
		$minutos=($resto-$resto2)/$sXMin;
		return $horas." ".getLabelByTag("telemktgHours").", ".$minutos." ".getLabelByTag("telemktgMinutes")." ".getLabelByTag("telemktgAnd")." ".$resto2." ".getLabelByTag("telemktgSeconds");		
	}			
	if($s>$sXdia){//si mas de 1 dia
		$resto=$s%$sXdia;
		$dias=($s-$resto)/$sXdia;
		
		if($resto<$sXhora){//si el resto es menos de 1 hora
			$resto2=$resto%$sXMin;
			$minutos=($resto-$resto2)/$sXMin;		
			return $dias." ".getLabelByTag("telemktgDays").", 0 ".getLabelByTag("telemktgHours").", ".$minutos." ".getLabelByTag("telemktgMinutes")." ".getLabelByTag("telemktgAnd")." ".$resto2." ".getLabelByTag("telemktgSeconds");
		}
		else{//Si el resto es mas de 1 hora		
			$resto2=$resto%$sXhora;
			$horas=($resto-$resto2)/$sXhora;
			$min=$resto2/$sXMin;
			$v_tmp=explode(".",$min);
			$min=$v_tmp[0];
			return $dias." ".getLabelByTag("telemktgDays").", ".$horas." ".getLabelByTag("telemktgHours")." ".getLabelByTag("telemktgAnd")." ".$min." ".getLabelByTag("telemktgMinutes");		
		}
	}	
	
 
}

/***************************************************************/
//Nombre: convertDateToSeconds
//Parametros: $fecha,$ndias
//Comentarios: suma dias a una fecha (formato dd/mm/aaaa � dd-mm-aaaa)
//
function convertDateToSeconds($fecha){
	//echo $fecha;
	$v_fechas=explode(" ",$fecha);
	list($anio,$mes,$dia)=explode("-",$v_fechas[0]);
	list($hora,$min,$seg)=explode(":",$v_fechas[1]);
	//echo $hora.$min.$seg.$mes.$dia.$anio;
	$tmp=$hora.$min.$seg.$mes.$dia.$anio;
	if($tmp!=""){
    	return mktime($hora,$min,$seg,$mes,$dia,$anio);
	}
}


/***************************************************************/
//Nombre: suma_minutos_a_fechas
//Parametros: $fecha,$min
//Comentarios: suma minutos a una fecha 
//
function suma_minutos_a_fechas($fecha,$minutos)
{

	$v_fechas=explode(" ",$fecha);
	list($anio,$mes,$dia)=explode("-",$v_fechas[0]);
	list($hora,$min,$seg)=explode(":",$v_fechas[1]);
	
    $nueva = mktime($hora,$min,$seg,$mes,$dia,$anio) + ($minutos * 60) ;
    $nuevafecha=date("Y-m-d H:i:s",$nueva);

	return ($nuevafecha); ;  
 
}

/***************************************************************/
//Nombre: comparoHoras
//Parametros:
//Comentarios: 
//
function comparoHoras($fecha1, $fecha2){

/**********************************************/

$v_fechaHora_1=explode(" ",$fecha1);

$v_fecha_1=explode("-",$v_fechaHora_1[0]);
$v_Hora_1=explode(":",$v_fechaHora_1[1]);

$dia_1=$v_fecha_1[2];
$mes_1=$v_fecha_1[1];
$anio_1=$v_fecha_1[0];

$hora_1=$v_Hora_1[0];
$min_1=$v_Hora_1[1];
$seg_1=$v_Hora_1[2];

/**********************************************/

$v_fechaHora_2=explode(" ",$fecha2);

$v_fecha_2=explode("-",$v_fechaHora_2[0]);
$v_Hora_2=explode(":",$v_fechaHora_2[1]);

$dia_2=$v_fecha_2[2];
$mes_2=$v_fecha_2[1];
$anio_2=$v_fecha_2[0];

$hora_2=$v_Hora_2[0];
$min_2=$v_Hora_2[1];
$seg_2=$v_Hora_2[2];


/**********************************************/

$dif=mktime($hora_1, $min_1,$seg_1, $mes_1, $dia_1, $anio_1) - mktime($hora_2, $min_2,$seg_2, $mes_2, $dia_2, $anio_2);
//echo "milisegundos entre : $fecha1 y $fecha2 :".$dif;
return $dif;

}

/***************************************************************/
//Nombre: restarFechasFormatoTexto
//Parametros: 
//Comentarios: 
//
//
function restarFechasFormatoTexto($fechaHora_1,$fechaHora_2){

$aux=explode(" ",$fechaHora_1);
$fecha_1=$aux[0];
$hora_1=$aux[1];

$aux=explode(" ",$fechaHora_2);
$fecha_2=$aux[0];
$hora_2=$aux[1];

//echo " fecha 1:".$fecha_1."<br>";
//echo " fecha 2:".$fecha_2."<br>";
//echo " hora 1:".$hora_1."<br>";
//echo " hora 2:".$hora_2."<br>";

//cargo en variables las fechas y horas
list($anio1,$mes1,$dia1)=explode("-",$fecha_1);
list($anio2,$mes2,$dia2)=explode("-",$fecha_2);
list($horas1,$min1,$seg1)=explode(":",$hora_1);
list($horas2,$min2,$seg2)=explode(":",$hora_2);

$dif = mktime($horas1,$min1,$seg1,$mes1,$dia1,$anio1) - mktime($horas2,$min2,$seg2, $mes2,$dia2,$anio2);

//echo $dif."<>";
$dif=convertSecondsToDaysMinSec($dif);
//$dif=$dif / 60 / 60 / 24;

return $dif;

}


/***************************************************************/
//Nombre: restarFechas
//Parametros: 
//Comentarios: 
//
//
function restarFechas($fechaHora_1,$fechaHora_2){

$aux=explode(" ",$fechaHora_1);
$fecha_1=$aux[0];
$hora_1=$aux[1];

$aux=explode(" ",$fechaHora_2);
$fecha_2=$aux[0];
$hora_2=$aux[1];

//echo " fecha 1:".$fecha_1."<br>";
//echo " fecha 2:".$fecha_2."<br>";
//echo " hora 1:".$hora_1."<br>";
//echo " hora 2:".$hora_2."<br>";

//cargo en variables las fechas y horas
list($anio1,$mes1,$dia1)=explode("-",$fecha_1);
list($anio2,$mes2,$dia2)=explode("-",$fecha_2);
list($horas1,$min1,$seg1)=explode(":",$hora_1);
list($horas2,$min2,$seg2)=explode(":",$hora_2);

$dif = mktime($horas1,$min1,$seg1,$mes1,$dia1,$anio1) - mktime($horas2,$min2,$seg2, $mes2,$dia2,$anio2);

//echo $dif."<>";
$dif=$dif / 60 / 60 / 24;

return $dif;

}

/***************************************************************/
//Nombre: restarFechasSegundos
//Parametros: 
//Comentarios: Igual a restarFechas  pero devuelve el resultado en minutos y no en d�as
//
//
function restarFechasSegundos($fechaHora_1,$fechaHora_2){

$aux=explode(" ",$fechaHora_1);
$fecha_1=$aux[0];
$hora_1=$aux[1];

$aux=explode(" ",$fechaHora_2);
$fecha_2=$aux[0];
$hora_2=$aux[1];

//echo " fecha 1:".$fecha_1."<br>";
//echo " fecha 2:".$fecha_2."<br>";
//echo " hora 1:".$hora_1."<br>";
//echo " hora 2:".$hora_2."<br>";

//cargo en variables las fechas y horas
list($anio1,$mes1,$dia1)=explode("-",$fecha_1);
list($anio2,$mes2,$dia2)=explode("-",$fecha_2);
list($horas1,$min1,$seg1)=explode(":",$hora_1);
list($horas2,$min2,$seg2)=explode(":",$hora_2);

$dif = mktime($horas1,$min1,$seg1,$mes1,$dia1,$anio1) - mktime($horas2,$min2,$seg2, $mes2,$dia2,$anio2);

return $dif;

}

/***************************************************************/
//Nombre: restarFechasMinutos
//Parametros: 
//Comentarios: Igual a restarFechas  pero devuelve el resultado en minutos y no en d�as
//
//
function restarFechasMinutos($fechaHora_1,$fechaHora_2){

$aux=explode(" ",$fechaHora_1);
$fecha_1=$aux[0];
$hora_1=$aux[1];

$aux=explode(" ",$fechaHora_2);
$fecha_2=$aux[0];
$hora_2=$aux[1];

//echo " fecha 1:".$fecha_1."<br>";
//echo " fecha 2:".$fecha_2."<br>";
//echo " hora 1:".$hora_1."<br>";
//echo " hora 2:".$hora_2."<br>";

//cargo en variables las fechas y horas
list($anio1,$mes1,$dia1)=explode("-",$fecha_1);
list($anio2,$mes2,$dia2)=explode("-",$fecha_2);
list($horas1,$min1,$seg1)=explode(":",$hora_1);
list($horas2,$min2,$seg2)=explode(":",$hora_2);

$dif = mktime($horas1,$min1,$seg1,$mes1,$dia1,$anio1) - mktime($horas2,$min2,$seg2, $mes2,$dia2,$anio2);

//echo $dif."<>";
$dif=$dif/60;

return $dif;

}

?>